23

» WarCraft 3 / Перегонка модели

Похожие вопросы:

ответ
ledoed, короче походу я что то нахимичил и у меня не роботала та модель сейчас зделал по новой все вроде роботает стабильно.

23

» WarCraft 3 / Следы на земле

Похожие вопросы:

ответ
наверно наилучше через ракетный залп механика. Устанавливаеш интервал урона 0.15 урон ХХХ и кол-во выстрелов 1, ставишь ефект гранаты вместо ракет.
А так надо очень хорошо подумать и скомбинировать триггеры и заклинания.
ответ
Вот, нашёл: xgm.guru/files/100/174291/comments/328619/USTS.w3x
А вот, что можно сделать с помощью этой системы:
ответ
Да, можно. Если знаешь как правильно выстроить случайное значение, то особого труда не составит построить определенный сценарий. Это можно реализовать через области, 3 изначальные области где будет выстраиваться тот или иной сценарий + через математический расчет координат областей можно выставить определенные предметы, но краше будет чистый "hardcore", выстраиваем случайное расположение точек, и в них что угодно, магазин, декор, и так далее...

На практике выглядит так:
При прогрузке карты выдаем случайное значение, которое имеет... скажем 3 триггера (3 комнаты). И в триггерах прописываем сценарий рендера локации комнаты, плюс триггер на эффект обитателя в области той или иной комнате.
ответ
Поскольку его не пугает наличие большого влияния промахов на геймплей - скорее всего он делает рпг. Имхо в рпг всегда клево смотрятся тексттаги полученного урона, для создания которых необходимы триггеры на отлов получения урона. А отлавливаемый урон - можно и прохилить.
Для прохила(и вообще всех манипуляций с задержкой в 0.00 сек) лично я юзаю такие костыли:
Либа здесь только для доп табуляции. Я за чистый жасс + дефайны.
library ZeroTimeEvent

    globals
        constant integer ZTEArraySize = 64//Even 32 is alot, 64 is too much! Exactly what I need!
        timer Zero//Used for 0. sec uses
        integer ZTECurrent = 0
        unit array ZTEUnits[ZTEArraySize]
        integer array ZTEIntegers[ZTEArraySize]
        real array ZTEReals[ZTEArraySize]
        trigger array ZTETriggers[ZTEArraySize]
    endglobals
    
    function ZeroTimeEvent takes nothing returns nothing
            loop
                set  ZTECurrent = ZTECurrent - 1
                call TriggerExecute( ZTETriggers[ZTECurrent] )
                exitwhen ZTECurrent < 1
            endloop
    endfunction
    
    #define ZTEAddUnit(u) = {
        set  ZTEUnits[ZTECurrent] = u
    }
    
    #define ZTEAddInteger(i) = {
        set  ZTEIntegers[ZTECurrent] = i
    }
    
    #define ZTEAddReal(r) = {
        set  ZTEReals[ZTECurrent] = r
    }
    
    #define ConfirmZTE(trig) = {
        set  ZTETriggers[ZTECurrent] = trig
        set  ZTECurrent = ZTECurrent + 1
        call TimerStart( Zero, ZeroTime, false, function ZeroTimeEvent )
    }
    
    
    
endlibrary
Пример использования
#define UnitRemoveForceAttack(u) = {
    call UnitAddAbility( u, 'Abun' )
    call UnitRemoveAbility( u, 'Abun' )
         ZTEAddUnit(u)
         ConfirmZTE(CheckIfUnitHasA002)
}
Минус такой системы в необходимости создавать триггер для каждого блока кода, т.к. массивы блоков кода запрещены

23

» WarCraft 3 / Золото

Похожие вопросы:

ответ
Каждую секунду проверяешь изменение золота у каждого игрока и заносишь в переменную. Если золота стало меньше чем указано в переменной, то установи такое количество золота у остальных игроков.
ответ
В редакторе объектов нужно в поле "Графика - нужная анимация" вписать "gold".
Только как после этого будет выглядеть такой юнит, когда потащит древесину - не знаю, не проверял.
ответ
Дополнительно -> Игровой интерфейс -> "Использовать нестандартный игровой интерфейс" -> Пиктограмма: золото/древесина/пища.
ответ
Ищи в редакторе объектов "пиктограмма на мини-карте" (или "нейтральное здание - значок на мини-карте") - это в редакторе войск.
Саму пиктограмму можно найти в игровом интерфейсе.
Это не скрывает надпись, но позволит добавить пиктограмму любому зданию.
Прикрепил бы скрины, но редактора поблизости нет.

23

» Администрация XGM / Бан

Похожие вопросы:

ответ
Мне тоже интересно, особенно если:
ScorpioT1000:
Времена антона и тыщи прошли, не будет никаких банов)
ответ
Read-Only, чтобы он не мог писать.
Banned, чтобы он не мог публиковать ресурсы в проекте.
ответ
"Alakdar" основной, "Алакдар" клон.
Заранее, спасибо.
ответ
Пусть разлоганится и смотрит, главное, чтобы у него не было возможности смотреть и что-либо делать в проекте в авторизованном состоянии.
и что тебе это даст? Ну посмотрит он с аккаунта гостя твой ресурс, а не с обычного. Функция бана нужна только что бы запретить людям писать в проекте (и делать прочие активные действия для которых нужен аккаунт).
Кстати саму функцию тоже нужно подправить, насколько я помню она немного багнуто работала, ну и конечно она не запрещает ставить ресурсам оценки, это тоже надо будет пофиксить.
ответ
GF RaiseD:
Баг сайта. Можешь сообщить об этом техадминам через форму обратной связи.

23

» WarCraft 3 / Опять они

Похожие вопросы:

ответ
Ятд что не хватило мипмапов.
ответ
Хмм Вроде разобрался скрыть и показать функции почему то багуют всё дело
ОМГ сам затупил под ночь простите... Там есть еще одна похожая функция это свернуть развернуть спутал :) Всё теперь всё работает : D Ура теперь милая мультиборда будет на ресурсах а не громоздкая лидерборда (да еще и без иконок была)
ответ
Во-первых это .blp. Удалить из своего mpq архива ничего не надо. Импортировать пустую текстуру тоже, их можно в редакторе выключить.
ответ
А исправить эти его "тупые" действия никак нельзя?
переписать ai скрипты
он хранится в mpq архивах в файлах с расширением .ai
например аи для людей хранится в файле human.ai
ответ
Что мешает записывать предмет в массив, и каждые 20 сек проверять жив ли предмет, или его забрали. Если забрали, создать в нужных координатах новый...

23

» Администрация XGM / Глюки

Принятый ответ
Похожие вопросы:

ответ
Форум в техническом плане никто не занимался с момента его установки.
Считаю что автор этого сабжа рак, юзает dragonfly и толсто троллит.

23

» WarCraft 3 / Способность с атакой

Похожие вопросы:

ответ
Sir_Lambert:
Хм, сделав вот это, я добился разброса урона. Он работал только тогда, когда работало улучшение "Громовой молот". Правда, я так и не понял, какой именно параметр сделал это. Правда, он вроде бы бил по своим все равно. Надо будет покопаться в этом и попытать дать этой фигне какой-нибудь эффект для видимости.
Для видимости можно поставить в графу Графика - Цель какой-нибудь эффект, он будет срабатывать на всех дополнительных целях. А чтобы он по своим не бил, надо поставить в графу Радиус поражения - Цели, нужные тебе типы юнитов, по которым будет проходить эта атака.
ответ
Пункт " убить боевую единицу" отвечает за то сможет ли урон от яда убить Юнита, если флаг не установлен то у Юнита останется 1-2 хп. Но яд не может его убить.
Разумеется не работают яд. Стрелы на маг иммунитет, ибо это активный автокаст.
Чтобы автокаст стрелы работали на маг. Имун нужно чтобы способность относилась к герою, требуемый для изучения уровень был выше 1. Вот и все.
ответ
А касательно остальной части, если UnitUserData нигде не используется, создаешь массив юнитов и отрядов. Массив юнитов забиваешь своими капитанами. В UnitUserData капитана пихаешь его порядковый номер в массиве. Создаешь группу юнитов для этого капитана.
  1. Добавление через каст способности.
Я бы делал через 2 разные абилки с одной и той же позицией в интерфейсе. Пока нужный тебе юнит не является частью отряда - у него таргетная абилка при касте которой на капитана он добавляется в группу соответствующего капитана и получает 2ю абилку взамен первой.
Касательно выделения этих пехотинцев - можно намутить что-то с передачей контроля или создать триггер, который будет снимать выделение с юнитов у которых есть 2я абилка. Если ты хочешь чтобы по одиночке можно было выделять пехотинцев - можешь создать переменную для каждого игрока с капитанами, куда будет просто записываться последний выбранный юнит. При снятии выделения - проверять не выбран ли этот же юнит, в случае чего не снимать выделение. Правда не уверен будет ли корректно работать :> В крайнем случае - будет работать в три клика вместо двух. Если я не ошибаюсь.
Касательно поведения этих пехотинцев - что-то реально стоящее сделать сложно. Возможно, но мне не с руки все расписывать :> Простейший вариант - приказывать пехотинцам после добавления в группу следовать за капитаном.
  1. Добавление через атаку капитана
Триггер, проверяющий что капитан получил урон или атакован, как угодно. Далее любым способом проверяешь есть ли в группе этого капитана юниты. Если нет - выбираешь всех пехотинцев N радиусе, добавляешь в отряд, заменяешь абилку/либо просто приказываешь кастануть в капитана первую абилку.
ответ
Проблема внезапно решилась сама собой. В дальнейших рассуждениях смысла не вижу, всем спасибо.
ответ
ScopteRectuS, элементарно - custom value и триггер с событием - юнит отдал приказ без указания цели, условие - приказ равен применять автокаст или не применять автокаст. Ну и тут же запись кастом валуе на юнита, 1 включен, 0 отключен. Тоже самое можно сделать с хешьтаблицами, стркутурами.
Но кастом валуе ни требует нихрена, код примитивен, не вызывает утечек, не ресурсозатратен.
Мне за вас это сделать а? Нет ну такое впечатление мы вчера открыли редактор карт....

23

» WarCraft 3 / Blender

Похожие вопросы:

ответ
У меня такое же было. Блендер глупит и сам не подключает аддоны. Заходишь в настройки и где-то в дебрях найдешь подключение аддонов
ответ
Есть плагин для 3dMax и Gmax - NeoDex. Он позволяет импортировать и экспортировать .mdx.
Если нет макса - качай gmax, маленький и бесплатный, и конвертируй в fbx.
ответ
Есть плагин для 3dsMax и Gmax - NeoDex. Он позволяет импортировать и экспортировать .mdx. Если нет макса - качай Gmax, маленький и бесплатный.
Здесь уроки по использованию данного плагина:
Basic Animation Tutorial!
Happy Animating with IK!
Сколько раз я уже это писал... Может кто-нибудь новую статью напишет о конвертации моделей для варкрафта?
ответ
Экспортировать в .3ds, закинуть в mdlvis (не забудь перевернуть uv-развертку), сохранить в .mdx и затем доработать в w3me.
ответ
для блендера есть только один плагин - импортёр...
который глючный и совсем негодный...
напрямую конвертить не получится...
уж тем более с анимациями...
есть вариант конверта в милкшейп (опять че через сторонний аддон), а оттуда в .мдх
конвертит хорошо, с костями, но анимацию убивает...
есть NeoDex для 3dsMax, в котором по плану можно делать всё и конвертить напрямую в .мдх...

23

» WarCraft 3 / Можно ли как-то выбрать точки на карте?

Похожие вопросы:

ответ
  1. Думаю, что можно.
Берем основную модель, возможно, вообще без мяса, только с гусеницами, но с кучей точек крепления. Также берем кучу моделей-аттачметов, представляющих собой эти самые пушки, корпуса и все прочее. При выборе характеристик модели через диалог или интерфейс соответственно создаем на основной модели эффекты-аттачменты, будет собрана техника. Такие штуки, как двигатель и прочие невидные извне элементы будут скорее входить в математическую модель юнита, но это также можно запилить. Название танка - сразу не скажу, есть ли триггер на смену, но на таблице рекордов можно отобразить что угодно.

2.Тоже можно.
Создаем погодный в определенной местности и делаем два триггера для контроля входа-выхода юнитов из нее. На искомых юнитов применяем нужные способности - и все готово.

  1. Здесь чуть сложнее: нужно постоянно проверять тип местности под юнитом, но тоже можно. Проверка на ограждения тоже может бить сделана.

4.Это уже интереснее. Видел раньше подобное в играх. При каждой атаке юнита случайным образом наносим или не наносим доп. урон, эффект горения, кидаем спелл на цель в зависимости от теоретического места попадания атаки.

5.И это можно. Но нужно писать нестандартную систему Альянса. Но через триггеры и JASS все можно...

  1. Продажа техники - лучше через способность, что бы кидать ее на понравившегося юнита, не стоит покупать кота в мешке. Стоимость должна зависеть от технического уровня юнита, его текущего состояния (мертвый танк попадет вам бесплатно, сами чините!), если он был модернизован дополнительно, то это тоже входит в стоимость. Разрешение на продажу делаем аналогично.

  1. Это легко через Custom Value и переменние.

Как ты понял, все что ты предложил создать можно, но на это нужно потрать хороший кусок времени. Остается пожелать тебе удачи над созданием проекта - мне идея уже нравится.
ответ
Автор где-то накосячил. В прикрепленной карте два героя. Один из них - невыделяемый. Когда горный король получает приказ стоп - он и второй герой получают +1 очко способностей. Отдавая приказ удержания позиции - -1 очко способностей. Это дело исправно отображается на их боковых иконках.
Триггеры созданы при помощи триггерного GUI и, при этом, явно не без помощи индуса. Искать ошибку кому-либо кроме автора в нем - не рентабельно. (по факту - это проще переписать. Но у гуишников это занимает много времени, да)

23

» WarCraft 3 / Помогите найти рпг

Похожие вопросы:

ответ
не знаю даже поищи СТАРЕЙШИХ ИГРОКОВ У ВАРКРАФТА и попроси у них все карты которые они имеют
а дальше пороверь все карты и найди её если не найдёш значит она тебе приснилась)

23

» WarCraft 3 / Анимация смерти

Похожие вопросы:

ответ
Эмм.
Копируешь кадр (ПКМ - копировать кадр).
Вставляешь в линейку новой анимации.
Всё.
ответ
у Сларка это даммик, который двигается вместе с ним, и потом ремувится
у Баланара - лопается, когда день наступает... присмотришь получше
ответ
XGM Bot:
Похожие вопросы:

ответ
8gabriel8, точно. Их там нет. Я перепутал. Не в константах, а в интерфейсе.
Текст - Общий - Жульничество разрешено
ответ
изменение уровня способности у мертвого юнита. апгрейдом или триггерно, неважно. скорее всего, способность в спелбуке
проверь AGg0
ответ
Воу... Джаз не обязательно изучать, всё это можно сделать и на ГУИ, тем более такую простую способность. На этом сайте есть тема "Заклинания на заказ". Заказывай, жди, получай, изучай. Если прям горит, могу сделать для тебя сам.

ответ
Chudo Derewo, зачем взламывать? С архива модель достань.

23

» WarCraft 3 / Как сделать две способности на основе одной у юнита.

Похожие вопросы:

ответ
Zhenya17, ты хотя бы основные статьи прочти и учебник 1 класса по логике
какой по твоему должна быть применяемая способность если способность никто не применяет?
когда прочтёшь то пикай на карте нужных тебе героев и удаляй у них нужную тебе способность

23

» WarCraft 3 / Обновление карты

Похожие вопросы:

ответ
ну или просто всё сделать и залить ресурсом через плюсик в правом верхнем углу
ответ
DemonoiD, Нет, да и лимит не всегда был 8 мб, недавно с четырёх подняли (относительно времени жизни варкравта).
Снова есть ретурн баг, подгружаешь микс архив всем кто запустил карту без их ведома и подключаешь, пусть улыбаются.
Правда могут быть проблемы с некоторыми античитами.
ответ
Тут сможет помочь только "мемхак", который выполнит загрузку необходимых файлов и по свей сути выполнит работу трояна. В остальном автоматически без хостбота этого сделать нельзя.
ответ
РБ - ниже 1,24 остальная ересь 1,24+, мемхак до 1,27b дальше идти смысла пока вообще нет.
ответ
Верни стандартную функцию создания стартовых юнитов, поставь игровую паузу, замени всех юнитов на свои аналоги, возобнови игру (я так же дополнительно прячу всех юнитов на этот период). Не забудь удалить все проклятые/оплетённые рудники, если нужно. Чтобы заново оплести рудник после замены юнитов (если заменял древа жизни), используй триггер "Боевая единица - (приказ без цели) Оплести ближайший рудник" (перед оплетением поставь паузу 0.1 секунды чтобы после удаления успел заново появится оригинальный рудник).

23

» WarCraft 3 / Дом

Похожие вопросы:

ответ
nvc123:
Nyanta, для начала дебаг сделать как написано в статье
Сделал. Триггер работает как нужно. При входе всегда пишет "Вход!", при выходе - "Выход!". Порядок текста не меняется.
В общем, проблема, почему-то, была в названии анимации. Открыл модель через MdlVis и назвал анимации "родными" словами Stand, Walk, Death. Стало работать как надо.
Спасибо Rare за
Rare:
ставь скорость анимации на 0%
И nvc123 за то, что натолкнул на мысль этим)
nvc123:
конфликт триггеров,неправильный проигрыш анимаций
ответ
Парадиз, тогда ставишь крышу как юнита со способностью москиты, неуязвимый и без возможности двигаться. Далее триггер:
Событие - юнит входит в область (дом).
Действие - Анимация - Change (крыша) vertex coloring to 100% 100% 100% with 90% transparency.
ответ
Если нужно отлавливать событие не через область - то делай проверку на взаимодействие с юнитами или декорациями.
ответ
Vlad242, её нужно установить в особое место где ци неба и земли соединяются воедино

23

» WarCraft 3 / Игровой интерфейс

Принятый ответ
Похожие вопросы:

ответ
War3.mpq/UI/Console
War3.mpq/UI/Widgets/Console
ответ
В правом верхнем углу у тебя есть поиск - гуглишь в нём всякие иконки и делаешь mix-архив.
ответ
Да, конечно. Есть 2 проверенных способа:
  1. Пишем свой вар и выставляем любые желаемые цвета
  2. Переписываем .dll и в ней указывает цвета.
Проще - никак.
ответ
никак
переменные можно использовать только в коде
в интерфейс их никак не засунешь
ответ
Попробуй набрать на номерной клаве (справа от стрелок) Alt+0130

23

» WarCraft 3 / Рикошет

Принятый ответ
Похожие вопросы:

ответ
nvc123:
надо давать скил рикошет вроде
Рикошет это тип атаки(тип оружия - edited), такой, у охотниц Лунный чакрум нифига не дает, просто иконка, сам эффект вызван переключением атаки.
Это делает либо апгрейдом либо морфом юнита, так же подсовыванием (убиранием абилки с орб эффектом)
ВНИМАНИЕ - тип атаки снаряд рикошет не сочетается с большинством орб эффектов.
ответ
Делать триггерные Криты и баши.
Дефолтные модификаторы атаки в в варе ( особенно для дальнего боя) не дружат между собой. Так что делаем их кастом версии.
ответ
Область поражения будет не округлой а эпилептической, смещенной на некоторое расстояние вперед, чтобы добится эффекта как от волны силы, чтобы поражать врагов позади цели атаки.
ответ
Самое главное - получить нормаль, вот некоторые функции, которые тебе пригодятся:
float3 GetNormal(float3 a, float3 b, float3 c)
{
	float wrki;
	float3 v1 = float3.create();
	float3 v2 = float3.create();
	float3 normal = float3.create();

	v1.x = a.x - b.x;
	v1.y = a.y - b.y;
	v1.z = a.z - b.z;

	v2.x = b.x - c.x;
	v2.y = b.y - c.y;
	v2.z = b.z - c.z;

	wrki = SquareRoot(sqr(v1.y * v2.z - v1.z * v2.y) + sqr(v1.z * v2.x - v1.x * v2.z) + sqr(v1.x * v2.y - v1.y * v2.x));
	normal.x = (v1.y * v2.z - v1.z * v2.y) / wrki;
	normal.y = (v1.z * v2.x - v1.x * v2.z) / wrki;
	normal.z = (v1.x * v2.y - v1.y * v2.x) / wrki;

	return normal;
}

float DotProduct(float3 v1, float3 v2)
{
	return v1.x*v2.x + v1.y*v2.y + v1.z*v2.z;
}

float3 Reflect(float3 ray, float3 normal)
{
	return -2 * DotProduct(ray, normal) * normal + ray;
}
Далее в функции движения снаряда определяем столкновение с землёй, получаем нормаль и строим вектор отражения по данной нормали и текущей скорости снаряда:
float3 v1 = float3.New(curPos.x+2, curPos.y+2, GetTerrainZ(curPos.x+2, curPos.y+2));
float3 v2 = float3.New(curPos.x+2, curPos.y, GetTerrainZ(curPos.x+2, curPos.y));
float3 v3 = float3.New(curPos.x, curPos.y+2, GetTerrainZ(curPos.x, curPos.y+2));
float3 normal = GetNormal(v1, v2, v3);

float3 reflect = Reflect(curVelocity, normal);

23

» WarCraft 3 / Почему не работает триггер?

Похожие вопросы:

ответ
попробуй поменять событие "юнит использует предмет" на "юнит приводит способность в действие" , а условие - "способность == перст смерти"
ответ
Короче: если ставить юнита, который относится к игроку, но самого игрока нет... То whosyourdaddy не будет работать на всех юнитах этого игрока.
ответ
Вместо
function InitTrig_CreepSpell takes nothing returns nothing
    set gg_trg_CreepSpell = CreateTrigger()
    call TriggerRegisterPlayerUnitEvent(gg_trg_CreepSpell, Player(1), EVENT_PLAYER_UNIT_SPELL_EFFECT, function CreepSpellFilter) 
    call TriggerAddAction(gg_trg_CreepSpell, function CreepSpellActivation)
endfunction
сделай так:
function InitTrig_CreepSpell takes nothing returns nothing
    set gg_trg_CreepSpell = CreateTrigger()
    call TriggerRegisterPlayerUnitEvent(gg_trg_CreepSpell, Player(1), EVENT_PLAYER_UNIT_SPELL_EFFECT, null) //function CreepSpellFilter
    call TriggerAddCondition(gg_trg_CreepSpell, Condition(function CreepSpellFilter))
    call TriggerAddAction(gg_trg_CreepSpell, function CreepSpellActivation)
endfunction
и вот здесь:
if IsUnitEnemy(GetFilterUnit(), Player(10)) then
        set Dummy = CreateUnit(Player(1), 'e004', CasterX, CasterY, bj_RADTODEG*Atan2(TargetY - CasterY, TargetX - CasterX))
		call IssuePointOrder(Dummy, "attackground", TargetX, TargetY)
        call UnitApplyTimedLife(Dummy, 'BTLF', 3)
        set Dummy = null
    endif
поменяй местами IssuePointOrder и UnitApplyTimedLife, чтобы было вот так:
    if IsUnitEnemy(GetFilterUnit(), Player(10)) then
        set Dummy = CreateUnit(Player(1), 'e004', CasterX, CasterY, bj_RADTODEG*Atan2(TargetY - CasterY, TargetX - CasterX))
        call UnitApplyTimedLife(Dummy, 'BTLF', 3)
        call IssuePointOrder(Dummy, "attackground", TargetX, TargetY)
        set Dummy = null
    endif
ответ
not_name:
может скинешь карту удали все что не связанно с предметами посмотрим что не так.
Вот скрин одного из предметов, который перестал работать. Boots of Travel - активка. Мне кажется это просто баг, так как перестает работать какой-то предмет, на самом деле, очень редко. Я думал может есть какое то логическое объяснение, но увы.
Спасибо за ответы.

23

» WarCraft 3 / Инком

Похожие вопросы:

ответ
Пробовать не хочу, но предложу вот, что:
Если цель - защитить карту от подглядывания. То при старте игры или инициализации (если получится) можно запустить триггер с условием Вид: карта разведана is Set == да (процитировал текст условия из Гуи), действие - замкнутый цикл, или вызвать фатальную ошибку, вылет и т.д. Суть в том, что когда игрок запустит карту с такими параметрами, то тупо закрашить варик.
ответ
вопросы типа сделайте за меня не принимаются
по поводу того как это делать написано здесь xgm.guru/p/wc3/articles
ответ
BrEd Pitt, что значит использовать
берёшь и создаёшь юнитов для резервного игрока а потом отдаёшь им приказ
ответ
Возможно listfile.txt повредился.
Перекачай его.
ответ
есть событие - юнит получает урон. в нём отслеживается как жертва, так и наносящий урон. можно хоть через хэш, хоть через структуру Юнита записывать всё, что угодно. Кто от кого конкретно сколько получил урона, кто кому сколько нанёс, сколько провисел на ком-то бафф яда и т.п. (Сначала был loop, а теперь периодический триггер). Каждые N секунд, перебираешь всех юнитов в массиве или списке, и отслеживаешь всё, что надо.
Структура - Unit. У неё есть двойной список с юнитами и уроном от яда (полученным или нанесённым - зависит от того, у кого будет этот список - у жертв или у тех, кто наносит яд). Типа DoubleList. В DoubleList есть элементы DoubleElement. В каждом таком элементе записаны unit и real (урон от яда от этого юнита). При получении урона от яда перебирается список, если юнит уже есть, урон от него (или ему) прибавляется. Если нет, то создаётся новый элемент с новым юнитом.
Периодически у нужных юнитов эти списки перебираются. Всё.

23

» WarCraft 3 / Хелп

Похожие вопросы:

ответ
триггерно тпшим и наносим урон
а вообще научитесь нормально формулировать свои мысли
ответ
через переменную случайное число
ответ
Проверяешь если слот не занят, потом удаляешь жителя.
ответ
Есть триггерные действия на смену текстуры в точке, но там тоже есть предел на их количество.
Где-то здесь на хгме был генератор рандомного ландшафта на триггерах, и там случайно выпадает зимний/осенний ланд и т.д.

23

» WarCraft 3 / Обьекты

Принятый ответ
Похожие вопросы:

ответ
нефиг создавать столько объектов
редактируй напрямую слк
ответ
Нужно использовать dewidgetizer
WarSC:
ты хочешь взломаную карту редактировать
Нет же. Человек просто удалил свои объекты.
ответ
Это пункты во вкладке Юниты: world-editor-tutorials.thehelper.net/uniteditor.php
На том же сайте можешь все остальное поискать.
ответ
Очень просто, на эти скиллы нужно сделать ссылки в коде, что их что то использует, ибо отключить галочку - Удалять не используемые способности, оптимизаторы таким образом удаляют мусор, который не где не прменяется, это как у фрога доте - 400+ юнитов говна, вроде альтернативных ультов феникса, старого сикера, и так далее.
Самый верный способ, создайте на карте всех нужных вам юнитов в некой области из которой они будут удалены при старте игры, легко и просто?
ответ
сделать этот объект в слк и импортировать слк в карту
скорее всего в ро его видно не будет

23

» WarCraft 3 / Отслеживание атак

Похожие вопросы:

ответ
имхо, легче сделать ее самому, а не отлавливать
ответ
на сколько я понял твой триггер срабатывает при получении урона определённым юнитом
и ты вызываешь в нём этот триггер
который наносит урон этому самому юниту
в результате опять срабатывает отлов урона
и опять наносится урон
и опять ...
в общем получается рекурсия и вар выкидывает из за переполнения стека
кстати почему бы не сделать отлов урона в 1 триггере?

23

» WarCraft 3 / Сфера огня

Похожие вопросы:

ответ
делай наработку, прошу тебя)
Ну что за народ.
Ладно, попытка - не пытка. Жди.

Ну вот, готово.
Здесь:
  • ItemCombine1 - то, чего достаточно для разных предметов.
  • ItemСombine2 - учитывает, что предметы могут бить одинаковы.
Минусом подобного на GUI есть то, что на каждый рецепт нужен отдельный триггер.
nvc123 здесь однозначно прав.
Примеры подобного на JASS есть на сайте или могу потом показать коды собственного производства.

23

» WarCraft 3 / Анимации

Принятый ответ
Похожие вопросы:

ответ
MrSlendyBoy, еще раз, анимация может быть только Channel (спелл сам не может выбрать Channel 1, 2 -10) Проигрывайте анимацию по индексу триггерно при применении способности.
ответ
1,2 - это вариации одного и того же состояния, а First, Second, Alternate, Gold и прочие - альтернативы, работающие только с использованием данного тега, причем они также могут иметь свои вариации 1,2 и тд.
ответ
Разобрался. Просто тупо переименовал названия анимаций.
ответ
варкрафт поддерживает множество анимаций, которые никак не используются самой игрой, их можно запускать только триггерами

23

» WarCraft 3 / Перенос jass

Похожие вопросы:

ответ
во первых где дебаг
во вторых не фиг вешать на хэндл таймера всякую фигню
юзай список и пробегай по нему таймером
и будет тебе счастье
в третьих если говоришь что где то ошибка ты должен указать :
  1. строку с ошибкой
  2. доказательства того что она произошла (скрин + лог)
  3. собственные попытки её исправить
в четвёртых предоставить карту
короче либо предоставь всю информацию либо перепиши код по нормальному
как правильно переписать ты сможешь прочесть в статьях
либо увидеть в любом более менее нормальном движке (тот же движок вара)
ответ
Кириллицы в пути к JNGP или к карте нету?
ответ
Там и защиты то никакой нету, деоптимизатором прошёлся да и все, код редактируешь одтельно и вставляешь в уже подготовленную карту.
Вот опен карта, там все изи...